using System;
using JGSY.CMS.LowCode.Platform.Domain.Interfaces;

namespace Domain.Entities
{
    /// <summary>
    /// 备份记录实体
    /// 用于存储系统备份任务的相关信息
    /// </summary>
    public class Backup : ITenantEntity
    {
        /// <summary>
        /// 备份记录标识符
        /// </summary>
        public long Id { get; set; }
        
        /// <summary>
        /// 备份类型
        /// 如：数据库备份、文件备份、完整备份等
        /// </summary>
        public string Type { get; set; } = string.Empty;
        
        /// <summary>
        /// 备份文件路径
        /// 备份文件在存储系统中的完整路径
        /// </summary>
        public string FilePath { get; set; } = string.Empty;
        
        /// <summary>
        /// 创建时间
        /// 备份任务执行的时间戳
        /// </summary>
        public DateTime CreatedAt { get; set; }
        
        /// <summary>
        /// 备份状态
        /// 0-进行中, 1-成功, 2-失败
        /// </summary>
        public byte Status { get; set; }

        /// <summary>
        /// 租户标识符
        /// </summary>
        public string TenantId { get; set; } = string.Empty;
    }
}
